package com.hup.joystick.service.jna;

import com.sun.jna.Structure;
import com.sun.jna.Structure.FieldOrder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.ToString;

/**
 * 查询已连接设备时返回的设备对象
 */
@Getter
@ToString
@NoArgsConstructor
@FieldOrder({"tszInstanceName", "guid"})
public class EnumDeviceData extends Structure {

    /**
     * 设备名
     */
    public String tszInstanceName;
    /**
     * GUID字符串,格式:3+8位十六进制数(带0x),以逗号分隔;
     * JNA的GUID类不能用,因为java和cpp的long位数不一样,JNA直接转换时是有bug的
     */
    public String guid;

    /**
     * 只在测试时使用
     */
    public EnumDeviceData(String tszInstanceName, String guid) {
        this.tszInstanceName = tszInstanceName;
        this.guid = guid;
    }

}